<?php


use PHPUnit\Framework\TestCase;

/**
 * requires 可以新增先决条件
 * @requires extension mysqli
 */
final class IncompleteTest extends TestCase
{
    /**
     * 标记为未完成的测试
     * @return void
     */
    public function testIncomplete(): void
    {
        self::assertTrue(true, 'This is a test');
        //将当前测试方法设置为未完成的测试，测试运行时会在这里停止，并将此测试标记为未完成的,标记为I。
        $this->markTestIncomplete("This test has not been implemented yet");
    }

    /**
     * 标记为需要跳过的测试
     * @return void
     */
    public function testSkipped(): void
    {
        self::assertTrue(true);
        //将当前测试方法设置为需要跳过的测试，测试运行时会在这里,被跳过的测试记为 S
        $this->markTestSkipped("This test has been skipped");
    }

    /**
     * 这里加上requires PHP >= 7.3就会判断运行当前测试方法时当前php版本是否大于7.3，不满足会标记为skipped状态
     * @requires PHP >= 7.3
     * @return void
     */
    public function testRequired(){
        self::assertTrue(true);
    }
}
